package com.njust.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service
public class MulService {
	
	@Autowired
	private BookService bookService;
	
	@Transactional
	public void mulTx(){
		//都是可以设置的；
		//传播行为来设置这个事务方法是不是和之前的大事务共享一个事务（使用同一条连接）；
		//REQUIRED  
		bookService.checkout7("Tom", "ISBN-001");
		
		//REQUIRED
		bookService.updatePrice1("ISBN-002", 998);
		

	}

	@Transactional
	public void mulTx2(){
		//都是可以设置的；
		//传播行为来设置这个事务方法是不是和之前的大事务共享一个事务（使用同一条连接）；
		//REQUIRED
		bookService.checkout7("Tom", "ISBN-001");

		//REQUIRED_NEW
		bookService.updatePrice2("ISBN-002", 998);

	}

	@Transactional
	public void mulTx3(){
		//都是可以设置的；
		//传播行为来设置这个事务方法是不是和之前的大事务共享一个事务（使用同一条连接）；
		//REQUIRED_NEW
		bookService.checkout8("Tom", "ISBN-001");

		//REQUIRED
		bookService.updatePrice1("ISBN-002", 998);

	}


	@Transactional
	public void mulTx4(){
		//都是可以设置的；
		//传播行为来设置这个事务方法是不是和之前的大事务共享一个事务（使用同一条连接）；
		//REQUIRED_NEW
		bookService.checkout8("Tom", "ISBN-001");

		//REQUIRED_NEW
		bookService.updatePrice3("ISBN-002", 998);

		int i = 10 / 0;

	}

}
